ALGO-104 算法训练 阿尔法乘积
问题描述
　　计算一个整数的阿尔法乘积。对于一个整数x来说，它的阿尔法乘积是这样来计算的：如果x是一个个位数，那么它的阿尔法乘积就是它本身；否则的话，x的阿尔法乘积就等于它的各位非0的数字相乘所得到的那个整数的阿尔法乘积。例如：4018224312的阿尔法乘积等于8，它是按照以下的步骤来计算的：
　　4018224312 → 4*1*8*2*2*4*3*1*2 → 3072 → 3*7*2 → 42 → 4*2 → 8
　　编写一个程序，输入一个正整数（该整数不会超过6,000,000），输出它的阿尔法乘积。
　　输入格式：输入只有一行，即一个正整数。
　　输出格式：输出相应的阿尔法乘积。
　　输入输出样例
样例输入
4018224312
样例输出
8

#include <iostream>
using namespace std;
int main() {
    string s;
    cin >> s;
    while(s.length() > 1) {
        int ans = 1;
        for(int i = 0; i < s.length(); i++) {
            if(s[i] != '0') {
                ans *= (int)(s[i] - '0');
            }
        }
        s = "";
        while(ans != 0) {
            s += (char)(ans % 10 + '0');
            ans = ans / 10;
        }
    }
    cout << s;
    return 0;
}